Skip to content
main
Switch branches/tags
jam0001/miccah/
jam0001/miccah/

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 

no-one-understands-my-vine-references-so-i-made-this-programming-language

If the name of this programming language doesn't make it clear, this is an esolang. It translates vine quotes into commands that run in a VM.

Building and Running

Currently only *nix platforms are supported.

cd no-one-understands-my-vine-references-so-i-made-this-programming-language
cargo build

./target/debug/no-one-understands-my-vine-references-so-i-made-this-programming-language example.vine

VM

The Virtual Machine for this language is extremely simple: two 64-bit registers (primary and secondary), a stack, and a status register.

The language does provide a higher level for if / elseif / else / endif statements that you may not expect. You may also define exactly one function (however this feature is currently only partially implemented).

Opcodes

The opcodes are listed below, and are quite simple. Each opcode does exactly one thing; there are no parameters. Additionally, some of the opcodes are not yet implemented. The opcodes are case and punctuation sensitive.

Additional input between or surrounding the opcodes are ignored.

Opcode Description Implemented?
Hi, welcome to Chili's main function yes
I never went to Oovoo Javer primary = 0 yes
Eh primary = 1 yes
Miss Keisha! Miss Keisha! primary = 0 yes
Hey Ron primary = primary + 1 yes
Hey Billy primary = primary - 1 yes
Chris! Is that a weed?? primary = 911 yes
Oooh primary = 101 yes
The volume in this bus is astronomical primary = pow(primary, secondary) yes
Double cheeked up on a Thursday afternoon, primary = primary * 2 yes
Look at all those chickens! primary = primary + secondary yes
It is Wednesday my dudes primary = primary ^ secondary (XOR) yes
Road work ahead? Loop start yes
Yeah I sure hope it does Loop end yes
Let's go to the beach beach! push primary onto stack yes
I can't swim pop from stack into primary yes
I am confusion compare primary and secondary and set status register yes
Happy Chrismis if status is EqualTo yes
Its Chrismin elseif status is LessThan yes
Merry Chrisis elseif status is GreaterThan yes
Merry Chrysler endif yes
And they were roomates write byte in primary to file descriptor in secondary yes
ELLO SUSIE read byte into primary form file descriptor in secondary yes
IMMA BUY ME A SUBARU call function no
I don't even know which way the Quiznos is, break from loop yes
I can't believe you've done this open port number in primary no
A child close port number in primary no
No off-topic questions panic yes
You have been stopped panic yes
Zack stop return from function yes
What are those?? push primary onto stack, push secondary onto stack yes
I'm a giraffe! pop from stack into secondary, pop from stack into primary yes
Wow swap primary and secondary yes
I'm in me mum's car begin function definition partial
Get out me car end function definition partial

LangJam Metadata

This language was created for LangJam0001. The prompt was "first class comments" and so I interpreted that as "funny quotes."